710C - Magic Odd Square - CodeForces Solution


constructive algorithms math *1500

Please click on ads to support us..

C++ Code:

/* {وَقُلْ رَبِّ زِدْنِي عِلْمًاً} */
#include<bits/stdc++.h>
using namespace std;
#define TY cin.tie(0), cout.tie(0),cin.sync_with_stdio(0), cout.sync_with_stdio(0);
const int N = 1000;
int arr[N][N];
int main() {
    TY
    int n;
    cin >> n;
    int ev = 2, odd = 1;
    for (int i = 0; i < n / 2; ++i) {
        int k = n / 2 - i;
        for (int j = 0; j < k; ++j) {
            arr[i][j] = ev, ev += 2;
            arr[n - i - 1][j] = ev, ev += 2;
            arr[i][n - j - 1] = ev, ev += 2;
            arr[n - i - 1][n - j - 1] = ev, ev += 2;
        }
    }
    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < n; ++j)
            if (arr[i][j])cout << arr[i][j] << " ";
            else cout << odd << " ", odd += 2;
        cout << '\n';
    }
}


Comments

Submit
0 Comments
More Questions

1542A - Odd Set
1567B - MEXor Mixup
669A - Little Artem and Presents
691B - s-palindrome
851A - Arpa and a research in Mexican wave
811A - Vladik and Courtesy
1006B - Polycarp's Practice
1422A - Fence
21D - Traveling Graph
1559B - Mocha and Red and Blue
1579C - Ticks
268B - Buttons
898A - Rounding
1372B - Omkar and Last Class of Math
1025D - Recovering BST
439A - Devu the Singer and Churu the Joker
1323A - Even Subset Sum Problem
1095A - Repeating Cipher
630F - Selection of Personnel
630K - Indivisibility
20B - Equation
600B - Queries about less or equal elements
1015A - Points in Segments
1593B - Make it Divisible by 25
680C - Bear and Prime 100
1300A - Non-zero
1475E - Advertising Agency
1345B - Card Constructions
1077B - Disturbed People
653A - Bear and Three Balls